home *** CD-ROM | disk | FTP | other *** search
/ 17 Bit Software 6: Level 6 / 17 Bit - Level 6 (1998)(Epic Marketing)[!].iso / quartz / q0222.dms / q0222.adf / Copper-Paint.doc < prev    next >
Text File  |  1991-05-10  |  7KB  |  133 lines

  1.                            Copper-Paint-DEMO-Version
  2.                            -------------------------
  3.  
  4.     Copper-Paint wurde von Holger Hippenstiel in 1989-1991 geschrieben.
  5.  
  6. Die Funktion:
  7. -------------
  8. Jeder hat wohl schon davon gehört, daß der Copper auf eine Position auf
  9. dem Bildschirm warten kann um dann irgendwelche Operationen durchzuführen,
  10. z.B. ändern der Farbe00 in Register $180 der Customchips. Womit man dann
  11. den Bildschirm mit einem Farbregister in mehrere Farben unterteilen kann.
  12. Jeder Befehl des Coppers verbraucht aber Zeit,egal ob Wait,Skip oder Move.
  13. Ist bei einem Skip die geforderte Zeile übersprungen,wird zwar sofort
  14. fortgefahren, aber beim Vergleich ob kleiner,größer oder gleich verbraucht
  15. der Copper auch seine Taktzyklen.Wartet man also auf X1,Y1 und schreibt dann
  16. schwarz in die Farbe00 und wartet dann auf die nächste Rasterstrahlposition
  17. (X2,Y1), ist der Rasterstrahl also schon viel weiter,da die Befehle Zeit
  18. verbrauchen, die ihnen auch noch zugeteilt wird, denn der Prozessor,
  19. der Blitter, die Bildschirm-DMA, die Sound-DMA usw. wollen ja auch arbeiten.
  20. Das heisst aber nicht das wenn man alles ausschaltet,der Copper schneller
  21. würde ! Freiwerdende Taktzyklen werden dem Prozessor zugeteilt.
  22. Will man also mit dem Copper eine möglichst hohe Auflösung erreichen,
  23. darf man nicht (zuviel) warten.Also nur ein Wait am Anfang der Zeile,
  24. das muss allerdings sein, weil durch die Austastlücke eine ungerade Anzahl
  25. Zyklen enstehen. Also nur ein Wait und danach ohne Unterbrechung nur Moves.
  26. Beispiel: Wait 1,1 ; Move 0,180 ; Move 1,180 ; Move 2,180 ; Move 3,180 ...
  27. Dadurch würde sich ein übergang von Schwarz nach Blau auf dem Bildschirm
  28. bilden ! Aber nicht etwa wie man es gewohnt ist von oben nach unten,
  29. sondern von links nach rechts !¡!
  30.  
  31. Turboprozessoren:
  32. -----------------
  33. Es ist 100% in Assembler geschrieben,also braucht man eigentlich
  34. keinen Turboprozessor.
  35. Wenn sie einen haben sollte,so schaltet sie bitte das Cache aus.
  36. Das Programm hat in der Hauptroutine eine Stelle an der es sich
  37. selbst modifiziert. Das auch nur weil ich sonst für jeden modi eine
  38. eigene Zeichenroutine haben müßte. Denn ich kann nicht bei jeder
  39. Verknüpfung erst abfragen welcher Zeichenmodi gerade aktiv ist !
  40. Das würde das Programm erheblich langsamer machen !!
  41. Aber wenn ich für jeden Modi eine eigene Routine hätte dann würde
  42. es erheblicher länger werden ...
  43. Also wenn sie einen Turbo-Prozessor mit Cache haben
  44. so schalten sie es bitte aus. Das Programm wird sich zwar nicht
  45. aufhängen wenn sie es nicht tun,aber die Zeichenmodi können
  46. nicht mehr ausgewählt werden. (bzw haben alle dieselbe Wirkung.) 
  47.  
  48. Anforderungen:
  49. --------------
  50. Copper-Paint wurde erfolgreich auf WB 1.2,1.3 & 2.0 getestet.
  51. Copper-Paint braucht mindestens 512 KB,läuft aber auch mit
  52. Erweiterung,unterstützt sie jedoch (noch) nicht.
  53. Es wird die Arp.library ab Version 39 oder höher gebraucht.
  54. Copper-Paint kann vom CLI oder der Workbench gestartet werden.
  55. (Bei der Demoversion wird kein Icon ausgeliefert.)
  56.  
  57. Aufbau:
  58. Copper-Paint nutz den Copper zur Bilddarstellung.
  59. Es werden keine Bitplanes zur Darstellung der Farben benötigt,
  60. daher kann jedes Copper-Paint-Bild mit jedem normalen IFF-Bild
  61. gleichgzeitig auf einem Bildschirm angezeigt werden,dafür sind
  62. keine Prozessorzugriffe oder ähnliches nötig.
  63. Das einzige Handicap das sich bei der benutzung von Copper-Paint
  64. bildern ergibt ist das die IFF-bilder nur 4 Planes haben dürfen.
  65. Bei mehr als 4 Bitplanes treten logischerweise auch mehr Bitplane
  66. -DMA's auf,die Grafikdaten müssen ja ausgegeben werden.
  67. Und ab 4 Bitplanes niedriger oder hoher Auflösung reichen die
  68. "normalen" Taktzyklen der DMA nicht mehr aus um das Bild voll
  69. auszugeben.Also werden dem 68000 Taktzyklen entzogen und der
  70. Bitplane-DMA zugeteilt.Genauso geht's auch dem Copper der auf einen
  71. Engpass trifft und nicht mehr regelmäßig (alle 8 Punkte) einen
  72. Befehl abgearbeitet bekommt.
  73. Daher ergibt sich die Begrenzung der 4 Planes.
  74. An Copper-Paint kann man erkennen wie Digi-View 4.0 mit Hoher
  75. Auflösung 4096 auf den Bildschirm bekommt.
  76. Man kann ja nicht nur die Hintergrundfarbe alle 8 Punkte ändern ...
  77.  
  78. Datenformat:
  79. Die Copperlisten werden gecruncht auf Diskette abgelegt.
  80. Es wird ein schnelles (simples) aber effektives packverfahren
  81. angewandt. (Leere Copperliste auf Disk = 10 Bytes)
  82. Das Verfahren ist so schnell das man nicht vom Packen oder
  83. Entpacken merkt,höchstens wenn man sich das direktory ansieht.
  84. Copper-Paint kann nur files mit dem Anhängsel ".cop" laden und
  85. speichern. Wird das Anhängsel nicht selbst angefügt,hängt es das
  86. Programm an. Ausserdem enthält jede gespeicherte Copperliste eine
  87. Kennung um Programmfehler oder Prüfsummenfehlern zu entgehen.
  88.  
  89.  
  90. Backups:
  91. Wenn ein File abgespeichert wird und der Name schon existiert,
  92. wird das File in Backup.cop umbenannt.
  93. Nicht wie bei Deluxe Paint,Deluxe Paint macht folgendes :
  94. Es sieht nach ob es das File backup.pic schon gibt.
  95. Wenn ja löscht es das File.
  96. Dann kopiert es das Bild das überschrieben werden soll nach
  97. backup.pic und speichert erst dann das eigentliche Bild.
  98. Copper-Paint macht es so :
  99. Backup.cop löschen (ohne nachsehen ob vorhanden),
  100. dann das Aktuelle File Renamen nach Backup.cop (Renamen,nicht kopieren !)
  101. und dann speichert es die Copperlist.
  102. Der Zeitunterschied ist beachtlich !
  103. (Praktisch kein Unterschied zu normalem Speichern !)
  104.  
  105. Die Zusatzprogramme:
  106. Zu Copper-Paint gehoeren noch eine reihe anderer Programme die aber nicht
  107. bei der Demoversion ausgeliefert werden. Weshalb Zusatzprogramme ?
  108. Was nuetzt die schoenste Copper-Liste wenn man sie nicht benutzen kann ?
  109. Oder eine erstellte Copper-Animation ohne dazugehoerigen Player ?
  110. Die Zusatzprogramme uebernehmen diese Funktionen.
  111. 1) Programm zum Anzeigen einer Copper-Liste auf der Worbench.
  112. 2) Programm zum Konvertieren der Copper-Liste in Assembler. (dc.w Col0,xxx)
  113. 3) Programm zum Anzeigen einer Copper-Liste & einem IFF-Bild.
  114. 4) Programm zum Spielen von Copper- und/oder IFF-Animationen.
  115. 5) Programm zum Konvertieren eines IFF-Bildes als Copperlist.
  116. 6) Programm zum Konvertieren einer Copperlist als IFF-Bild. (Lo-res/HAM)
  117. 7) Programm zum Installieren von Copper-Paint auf Festplatte.
  118. Bei allen Programmen erfaehrt man durch denn Parameter "?" mehr.
  119.  
  120. Die Demoversion:
  121. Wenn sie das Programm laden werden sie bemerken das :
  122. 1) Die Speicherfunktionen nicht funktionieren.
  123. 2) Die Menues ab "Extras" nicht aktiv sind.
  124. 3) Die Zusatzprogramme nicht vorhanden sind.
  125. 4) Im Menu "Extras" der sonst nichtvorhandene Punkt "Gruesse an".
  126.  
  127. (Achtung :Die Speicherfunktion & die funktionen ab "Extras" sind nicht in der
  128.  Demoversion als Code vorhanden. Der Aufruf bewirkt nichts,ist nicht moeglich
  129.  oder es wird eine ensprechende Meldung ausgeben.)
  130.  
  131. Das war es erstmal,viel Spass mit der Demoversion ...      Holger Hippenstiel
  132.  
  133.